The Internet Protocol (“IP”) is an addressing protocol designed to route traffic within a network or between networks. The Internet Protocol is used on many computer networks including the Internet, intranets and other networks. Internet Protocol addresses are typically assigned to “immobile” nodes on a network. An immobile node may be moved to a different computer network, but is typically associated with a static physical location (e.g., 3Com Corporation in Santa Clara, Calif.) and an immobile Internet protocol address.
The Mobile Internet Protocol (hereinafter Mobile IP) allows “mobile” nodes to transparently move between different Internet Protocol sub-networks (“subnets”). Internet Protocol addresses are typically assigned to mobile nodes based on their home Internet Protocol subnet. The home subnet is connected to an external network (e.g., the Internet or an intranet) with a “home agent” that serves as the subnet's gateway router. As is known in the art, the gateway connects computer networks using different networking protocols or operating at different transmission capacities. As is known in the art, a router translates differences between network protocols and routes data packets to an appropriate network node or network device.
When a mobile node “roams,” (i.e., dynamically changes its physical location), it periodically transmits “agent solicitation” messages to other gateway routers. A mobile node also listens for “agent advertisement” messages from other gateway routers. When a mobile node receives an agent advertisement message indicating that it is now on a foreign subnet, it registers with the foreign gateway router or “foreign agent” and its home agent. The registration with the home agent indicates the mobile node is away from “home” (i.e., away from its home subnet). The registration with the foreign agent allows the mobile node to receive data on the foreign subnet.
The Mobile Internet Protocol allows a mobile node to dynamically change its network connectivity in a manner that is transparent to protocol layers above the Internet Protocol layer. For example, without re-establishing Transmission Control Protocol or User Datagram Protocol sessions.
As is known in the art, Transmission Control Protocol (“TCP”) and User Datagram Protocol (“UDP”) are often used over IP in computer networks. Transmission Control Protocol provides a connection-oriented, end-to-end reliable protocol designed to fit into a layered hierarchy of protocols that support multi-network applications. User Datagram Protocol provides a transaction oriented datagram protocol, where delivery and duplicate packet protection are not guaranteed.
It is often desirable to establish a voice, video and/or data call from a mobile node that has roamed from its home network to a foreign network. Such a voice video or data call is typically established using call control and other protocols such as Session Initiation Protocol (“SIP”), H.323, Authentication Authorization and Accounting (“AAA”) (e.g., for billing), Domain Name System (“DNS”) (e.g., for IP address decoding, etc.).
A mobile node registers with its home agent using a Mobile IP Registration Request message. As a result, its home agent can create or modify a mobility binding record (“MBR”) for that mobile node. A mobility binding record is used to keep track of mobile communications information such as a home network address of a mobile node on a home network, a care-of address for the mobile node on a foreign network, a lifetime timer for the association between the home network address and the care-of-network address, and other type mobile communications information.
However, there are several problems associated with managing mobility binding records for Mobile IP. One problem is a Mobile IP home agent may fail. If a Mobile IP home agent fails, then a standby home agent can take over from the failed home agent. However, the time required to complete a mobility binding record upload or download from the home network to a standby home agent for just one failed home agent currently servicing its maximum number of calls (e.g., about 10,000), can be in the range of ten or more minutes. This large time period can lead to a large number of failed calls due to timeouts and other problems and also cause significant user dissatisfaction. Another problem is that uploading or downloading large numbers of mobility binding records to a standby home agent can also cause significant network congestion leading to additional failed calls for other active home agents, especially if multiple home agents fail at the same time.
Another problem is that in many Mobile IP systems, home agents are managed by home agent control nodes. A home agent control node typically manages multiple home agents. If a home agent control node is managing multiple home agents and the home agent control node fails, thousands or perhaps tens of thousands of calls may fail.
For example, if a home agent control node is managing 14 home agents, and each home agent is operating near its maximum number of calls (e.g., 10,000 calls per home agent or about 140,000 calls per home agent control node), and the home agent fails, it could take hours to upload or download the hundreds or thousands of mobility binding records to a standby home agent control node from the individual home agents on the home network to allow the standby home agent to take over. The upload or download to a standby home agent control node can also lead to a large number of failed calls, significant user dissatisfaction or significant network congestion.
This it is desirable to provide a method to for transparently switching between active and standby home agents and active and standby home agent control nodes in a system with mobile devices. The transparent switching should be accomplished without downloading or uploading large numbers of mobility binding records.